package com.ourteam.product.requirement.dao;

import net.dao.BaseQueryBean;
import net.dao.BaseWhereCriterion;
import net.dao.IDataAccessInterface;

import org.apache.commons.lang.StringUtils;

import java.util.Arrays;
import java.util.List;
import java.util.Map;


/**
 * Template Name : DAO查询对象
 * Template Version : 1
 * Template Last Modfiy Date : Sat Aug 19 10:06:32 CST 2017
 * Auto Generate Date : 2018-05-03 16:45:25
  * Warning ! This file will be overwrite when regenerate !
  *
 */
public class ProductTeamRelateDAOQueryBean extends BaseQueryBean {
    public ProductTeamRelateDAOQueryBean() {
        super();
    }

    public ProductTeamRelateDAOQueryBean(BaseQueryBean aQueryBean) {
        super(aQueryBean);
    }

    public ProductTeamRelateDAOQueryBean(BaseQueryBean aQueryBean,
        Map tableReplaceMap) {
        super(aQueryBean, tableReplaceMap);
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();

        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }

        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        return new Criteria(this);
    }

    public void addIdSelectProperty() {
        addIdSelectProperty("id");
    }

    public void addIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.Id, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.Id, "id");
        }
    }

    public void addProductIdSelectProperty() {
        addProductIdSelectProperty("productId");
    }

    public void addProductIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.ProductId, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.ProductId, "productId");
        }
    }

    public void addRemarksSelectProperty() {
        addRemarksSelectProperty("remarks");
    }

    public void addRemarksSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.Remarks, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.Remarks, "remarks");
        }
    }

    public void addStatusSelectProperty() {
        addStatusSelectProperty("status");
    }

    public void addStatusSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.Status, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.Status, "status");
        }
    }

    public void addTeamIdSelectProperty() {
        addTeamIdSelectProperty("teamId");
    }

    public void addTeamIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.TeamId, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.TeamId, "teamId");
        }
    }

    public void addProductCodeSelectProperty() {
        addProductCodeSelectProperty("productCode");
    }

    public void addProductCodeSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.ProductCode, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.ProductCode, "productCode");
        }
    }

    public void addProductNameSelectProperty() {
        addProductNameSelectProperty("productName");
    }

    public void addProductNameSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamRelateDAO.ProductName, aAlias);
        } else {
            addSelectProperty(IProductTeamRelateDAO.ProductName, "productName");
        }
    }

    public void addAllSelectProperties() {
        addIdSelectProperty();

        addProductIdSelectProperty();

        addRemarksSelectProperty();

        addStatusSelectProperty();

        addTeamIdSelectProperty();

        addProductCodeSelectProperty();

        addProductNameSelectProperty();
    }

    public static class Criteria extends BaseWhereCriterion<ProductTeamRelateDAOQueryBean> {
        protected Criteria(ProductTeamRelateDAOQueryBean aParentObject) {
            super(aParentObject);
        }

        public Criteria andIdIsNull() {
            addCriterion(IProductTeamRelateDAO.Id + " is null");

            return this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion(IProductTeamRelateDAO.Id + " is not null");

            return this;
        }

        public Criteria andIdIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.Id + " is not null AND " +
                IProductTeamRelateDAO.Id + " <> ''");

            return this;
        }

        public Criteria andIdIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.Id + " is null OR " +
                IProductTeamRelateDAO.Id + " = '')");

            return this;
        }

        public Criteria andIdEqualTo(long value) {
            return andIdEqualTo(Long.valueOf(value));
        }

        public Criteria andIdEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " = ", value, "id");

            return this;
        }

        public Criteria andIdEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Id);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdNotEqualTo(long value) {
            return andIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andIdNotEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " <>", value, "id");

            return this;
        }

        public Criteria andIdNotEqualToOrIsNull(long value) {
            return andIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andIdNotEqualToOrIsNull(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " is null OR " +
                IProductTeamRelateDAO.Id + " <>", value, "id");

            return this;
        }

        public Criteria andIdNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Id);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdGreaterThan(long value) {
            return andIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andIdGreaterThan(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " >", value, "id");

            return this;
        }

        public Criteria andIdGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Id);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdGreaterThanOrEqualTo(long value) {
            return andIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andIdGreaterThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " >=", value, "id");

            return this;
        }

        public Criteria andIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Id);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdGreaterThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdLessThan(long value) {
            return andIdLessThan(Long.valueOf(value));
        }

        public Criteria andIdLessThan(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " <", value, "id");

            return this;
        }

        public Criteria andIdLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Id);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdLessThanOrEqualTo(long value) {
            return andIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andIdLessThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.Id + " <=", value, "id");

            return this;
        }

        public Criteria andIdLessThanOrEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Id);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdIn(long[] values) {
            if (values.length == 1) {
                return andIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Id + " in", values, "id");

                return this;
            }
        }

        public Criteria andIdNotIn(long[] values) {
            if (values.length == 1) {
                return andIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Id + " not in", values, "id");

                return this;
            }
        }

        public Criteria andIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andIdEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.Id + " in", values, "id");

                return this;
            }
        }

        public Criteria andIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andIdNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.Id + " not in", values, "id");

                return this;
            }
        }

        public Criteria andIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andIdEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Id + " in",
                    Arrays.asList(values), "id");

                return this;
            }
        }

        public Criteria andIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andIdNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Id + " not in",
                    Arrays.asList(values), "id");

                return this;
            }
        }

        public Criteria andIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Id + " not in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andIdBetween(long value1, long value2) {
            addCriterion(IProductTeamRelateDAO.Id + " between", value1, value2,
                "id");

            return this;
        }

        public Criteria andIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamRelateDAO.Id + " between", value1, value2,
                "id");

            return this;
        }

        public Criteria andIdNotBetween(long value1, long value2) {
            addCriterion(IProductTeamRelateDAO.Id + " not between", value1,
                value2, "id");

            return this;
        }

        public Criteria andIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamRelateDAO.Id + " not between", value1,
                value2, "id");

            return this;
        }

        public Criteria andProductIdIsNull() {
            addCriterion(IProductTeamRelateDAO.ProductId + " is null");

            return this;
        }

        public Criteria andProductIdIsNotNull() {
            addCriterion(IProductTeamRelateDAO.ProductId + " is not null");

            return this;
        }

        public Criteria andProductIdIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.ProductId + " is not null AND " +
                IProductTeamRelateDAO.ProductId + " <> ''");

            return this;
        }

        public Criteria andProductIdIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.ProductId +
                " is null OR " + IProductTeamRelateDAO.ProductId + " = '')");

            return this;
        }

        public Criteria andProductIdEqualTo(long value) {
            return andProductIdEqualTo(Long.valueOf(value));
        }

        public Criteria andProductIdEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " = ", value,
                "productId");

            return this;
        }

        public Criteria andProductIdEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductId);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " = ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andProductIdNotEqualTo(long value) {
            return andProductIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andProductIdNotEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " <>", value,
                "productId");

            return this;
        }

        public Criteria andProductIdNotEqualToOrIsNull(long value) {
            return andProductIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andProductIdNotEqualToOrIsNull(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " is null OR " +
                IProductTeamRelateDAO.ProductId + " <>", value, "productId");

            return this;
        }

        public Criteria andProductIdNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductId);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductIdNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " <> ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductIdGreaterThan(long value) {
            return andProductIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andProductIdGreaterThan(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " >", value,
                "productId");

            return this;
        }

        public Criteria andProductIdGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductId);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductIdGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " > ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andProductIdGreaterThanOrEqualTo(long value) {
            return andProductIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andProductIdGreaterThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " >=", value,
                "productId");

            return this;
        }

        public Criteria andProductIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductId);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductIdGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " >= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductIdLessThan(long value) {
            return andProductIdLessThan(Long.valueOf(value));
        }

        public Criteria andProductIdLessThan(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " <", value,
                "productId");

            return this;
        }

        public Criteria andProductIdLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductId);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " < ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andProductIdLessThanOrEqualTo(long value) {
            return andProductIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andProductIdLessThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.ProductId + " <=", value,
                "productId");

            return this;
        }

        public Criteria andProductIdLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductId);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductIdLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " <= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductIdIn(long[] values) {
            if (values.length == 1) {
                return andProductIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductId + " in", values,
                    "productId");

                return this;
            }
        }

        public Criteria andProductIdNotIn(long[] values) {
            if (values.length == 1) {
                return andProductIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductId + " not in",
                    values, "productId");

                return this;
            }
        }

        public Criteria andProductIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andProductIdEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.ProductId + " in", values,
                    "productId");

                return this;
            }
        }

        public Criteria andProductIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andProductIdNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.ProductId + " not in",
                    values, "productId");

                return this;
            }
        }

        public Criteria andProductIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andProductIdEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductId + " in",
                    Arrays.asList(values), "productId");

                return this;
            }
        }

        public Criteria andProductIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andProductIdNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductId + " not in",
                    Arrays.asList(values), "productId");

                return this;
            }
        }

        public Criteria andProductIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductId + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductIdBetween(long value1, long value2) {
            addCriterion(IProductTeamRelateDAO.ProductId + " between", value1,
                value2, "productId");

            return this;
        }

        public Criteria andProductIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamRelateDAO.ProductId + " between", value1,
                value2, "productId");

            return this;
        }

        public Criteria andProductIdNotBetween(long value1, long value2) {
            addCriterion(IProductTeamRelateDAO.ProductId + " not between",
                value1, value2, "productId");

            return this;
        }

        public Criteria andProductIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamRelateDAO.ProductId + " not between",
                value1, value2, "productId");

            return this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion(IProductTeamRelateDAO.Remarks + " is null");

            return this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion(IProductTeamRelateDAO.Remarks + " is not null");

            return this;
        }

        public Criteria andRemarksIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.Remarks + " is not null AND " +
                IProductTeamRelateDAO.Remarks + " <> ''");

            return this;
        }

        public Criteria andRemarksIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.Remarks + " is null OR " +
                IProductTeamRelateDAO.Remarks + " = '')");

            return this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " = ", value, "remarks");

            return this;
        }

        public Criteria andRemarksEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Remarks);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " = ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " <>", value, "remarks");

            return this;
        }

        public Criteria andRemarksNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " is null OR " +
                IProductTeamRelateDAO.Remarks + " <>", value, "remarks");

            return this;
        }

        public Criteria andRemarksNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Remarks);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " >", value, "remarks");

            return this;
        }

        public Criteria andRemarksGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Remarks);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " > ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " >=", value, "remarks");

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Remarks);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " <", value, "remarks");

            return this;
        }

        public Criteria andRemarksLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Remarks);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " < ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Remarks + " <=", value, "remarks");

            return this;
        }

        public Criteria andRemarksLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Remarks);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.Remarks + " like",
                buffer.toString(), "remarks");

            return this;
        }

        public Criteria andRemarksNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.Remarks + " not like",
                buffer.toString(), "remarks");

            return this;
        }

        public Criteria andRemarksIn(List<String> values) {
            if (values.size() == 1) {
                return andRemarksEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.Remarks + " in", values,
                    "remarks");

                return this;
            }
        }

        public Criteria andRemarksNotIn(List<String> values) {
            if (values.size() == 1) {
                return andRemarksNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.Remarks + " not in", values,
                    "remarks");

                return this;
            }
        }

        public Criteria andRemarksIn(String[] values) {
            if (values.length == 1) {
                return andRemarksEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Remarks + " in",
                    Arrays.asList(values), "remarks");

                return this;
            }
        }

        public Criteria andRemarksNotIn(String[] values) {
            if (values.length == 1) {
                return andRemarksNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Remarks + " not in",
                    Arrays.asList(values), "remarks");

                return this;
            }
        }

        public Criteria andRemarksIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andRemarksNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Remarks + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.Remarks + " between", value1,
                value2, "remarks");

            return this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.Remarks + " not between",
                value1, value2, "remarks");

            return this;
        }

        public Criteria andStatusIsNull() {
            addCriterion(IProductTeamRelateDAO.Status + " is null");

            return this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion(IProductTeamRelateDAO.Status + " is not null");

            return this;
        }

        public Criteria andStatusIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.Status + " is not null AND " +
                IProductTeamRelateDAO.Status + " <> ''");

            return this;
        }

        public Criteria andStatusIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.Status + " is null OR " +
                IProductTeamRelateDAO.Status + " = '')");

            return this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " = ", value, "status");

            return this;
        }

        public Criteria andStatusEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Status);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " <>", value, "status");

            return this;
        }

        public Criteria andStatusNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " is null OR " +
                IProductTeamRelateDAO.Status + " <>", value, "status");

            return this;
        }

        public Criteria andStatusNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Status);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " >", value, "status");

            return this;
        }

        public Criteria andStatusGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Status);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " >=", value, "status");

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Status);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " <", value, "status");

            return this;
        }

        public Criteria andStatusLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Status);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.Status + " <=", value, "status");

            return this;
        }

        public Criteria andStatusLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.Status);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStatusLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.Status + " like",
                buffer.toString(), "status");

            return this;
        }

        public Criteria andStatusNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.Status + " not like",
                buffer.toString(), "status");

            return this;
        }

        public Criteria andStatusIn(List<String> values) {
            if (values.size() == 1) {
                return andStatusEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.Status + " in", values,
                    "status");

                return this;
            }
        }

        public Criteria andStatusNotIn(List<String> values) {
            if (values.size() == 1) {
                return andStatusNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.Status + " not in", values,
                    "status");

                return this;
            }
        }

        public Criteria andStatusIn(String[] values) {
            if (values.length == 1) {
                return andStatusEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Status + " in",
                    Arrays.asList(values), "status");

                return this;
            }
        }

        public Criteria andStatusNotIn(String[] values) {
            if (values.length == 1) {
                return andStatusNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.Status + " not in",
                    Arrays.asList(values), "status");

                return this;
            }
        }

        public Criteria andStatusIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStatusNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.Status + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.Status + " between", value1,
                value2, "status");

            return this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.Status + " not between", value1,
                value2, "status");

            return this;
        }

        public Criteria andTeamIdIsNull() {
            addCriterion(IProductTeamRelateDAO.TeamId + " is null");

            return this;
        }

        public Criteria andTeamIdIsNotNull() {
            addCriterion(IProductTeamRelateDAO.TeamId + " is not null");

            return this;
        }

        public Criteria andTeamIdIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.TeamId + " is not null AND " +
                IProductTeamRelateDAO.TeamId + " <> ''");

            return this;
        }

        public Criteria andTeamIdIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.TeamId + " is null OR " +
                IProductTeamRelateDAO.TeamId + " = '')");

            return this;
        }

        public Criteria andTeamIdEqualTo(long value) {
            return andTeamIdEqualTo(Long.valueOf(value));
        }

        public Criteria andTeamIdEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " = ", value, "teamId");

            return this;
        }

        public Criteria andTeamIdEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.TeamId);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andTeamIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andTeamIdNotEqualTo(long value) {
            return andTeamIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andTeamIdNotEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " <>", value, "teamId");

            return this;
        }

        public Criteria andTeamIdNotEqualToOrIsNull(long value) {
            return andTeamIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andTeamIdNotEqualToOrIsNull(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " is null OR " +
                IProductTeamRelateDAO.TeamId + " <>", value, "teamId");

            return this;
        }

        public Criteria andTeamIdNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.TeamId);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andTeamIdNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andTeamIdGreaterThan(long value) {
            return andTeamIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andTeamIdGreaterThan(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " >", value, "teamId");

            return this;
        }

        public Criteria andTeamIdGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.TeamId);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andTeamIdGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andTeamIdGreaterThanOrEqualTo(long value) {
            return andTeamIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andTeamIdGreaterThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " >=", value, "teamId");

            return this;
        }

        public Criteria andTeamIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.TeamId);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andTeamIdGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andTeamIdLessThan(long value) {
            return andTeamIdLessThan(Long.valueOf(value));
        }

        public Criteria andTeamIdLessThan(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " <", value, "teamId");

            return this;
        }

        public Criteria andTeamIdLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.TeamId);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andTeamIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andTeamIdLessThanOrEqualTo(long value) {
            return andTeamIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andTeamIdLessThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamRelateDAO.TeamId + " <=", value, "teamId");

            return this;
        }

        public Criteria andTeamIdLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.TeamId);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andTeamIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andTeamIdIn(long[] values) {
            if (values.length == 1) {
                return andTeamIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.TeamId + " in", values,
                    "teamId");

                return this;
            }
        }

        public Criteria andTeamIdNotIn(long[] values) {
            if (values.length == 1) {
                return andTeamIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.TeamId + " not in", values,
                    "teamId");

                return this;
            }
        }

        public Criteria andTeamIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andTeamIdEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.TeamId + " in", values,
                    "teamId");

                return this;
            }
        }

        public Criteria andTeamIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andTeamIdNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.TeamId + " not in", values,
                    "teamId");

                return this;
            }
        }

        public Criteria andTeamIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andTeamIdEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.TeamId + " in",
                    Arrays.asList(values), "teamId");

                return this;
            }
        }

        public Criteria andTeamIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andTeamIdNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.TeamId + " not in",
                    Arrays.asList(values), "teamId");

                return this;
            }
        }

        public Criteria andTeamIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andTeamIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.TeamId + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andTeamIdBetween(long value1, long value2) {
            addCriterion(IProductTeamRelateDAO.TeamId + " between", value1,
                value2, "teamId");

            return this;
        }

        public Criteria andTeamIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamRelateDAO.TeamId + " between", value1,
                value2, "teamId");

            return this;
        }

        public Criteria andTeamIdNotBetween(long value1, long value2) {
            addCriterion(IProductTeamRelateDAO.TeamId + " not between", value1,
                value2, "teamId");

            return this;
        }

        public Criteria andTeamIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamRelateDAO.TeamId + " not between", value1,
                value2, "teamId");

            return this;
        }

        public Criteria andProductCodeIsNull() {
            addCriterion(IProductTeamRelateDAO.ProductCode + " is null");

            return this;
        }

        public Criteria andProductCodeIsNotNull() {
            addCriterion(IProductTeamRelateDAO.ProductCode + " is not null");

            return this;
        }

        public Criteria andProductCodeIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.ProductCode +
                " is not null AND " + IProductTeamRelateDAO.ProductCode +
                " <> ''");

            return this;
        }

        public Criteria andProductCodeIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.ProductCode +
                " is null OR " + IProductTeamRelateDAO.ProductCode + " = '')");

            return this;
        }

        public Criteria andProductCodeEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " = ", value,
                "productCode");

            return this;
        }

        public Criteria andProductCodeEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductCode);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductCodeEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " = ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeNotEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " <>", value,
                "productCode");

            return this;
        }

        public Criteria andProductCodeNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " is null OR " +
                IProductTeamRelateDAO.ProductCode + " <>", value, "productCode");

            return this;
        }

        public Criteria andProductCodeNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductCode);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductCodeNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " <> ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeGreaterThan(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " >", value,
                "productCode");

            return this;
        }

        public Criteria andProductCodeGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductCode);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductCodeGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " > ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " >=", value,
                "productCode");

            return this;
        }

        public Criteria andProductCodeGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductCode);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductCodeGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " >= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeLessThan(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " <", value,
                "productCode");

            return this;
        }

        public Criteria andProductCodeLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductCode);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductCodeLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " < ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " <=", value,
                "productCode");

            return this;
        }

        public Criteria andProductCodeLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductCode);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductCodeLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " <= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.ProductCode + " like",
                buffer.toString(), "productCode");

            return this;
        }

        public Criteria andProductCodeNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.ProductCode + " not like",
                buffer.toString(), "productCode");

            return this;
        }

        public Criteria andProductCodeIn(List<String> values) {
            if (values.size() == 1) {
                return andProductCodeEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.ProductCode + " in", values,
                    "productCode");

                return this;
            }
        }

        public Criteria andProductCodeNotIn(List<String> values) {
            if (values.size() == 1) {
                return andProductCodeNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.ProductCode + " not in",
                    values, "productCode");

                return this;
            }
        }

        public Criteria andProductCodeIn(String[] values) {
            if (values.length == 1) {
                return andProductCodeEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductCode + " in",
                    Arrays.asList(values), "productCode");

                return this;
            }
        }

        public Criteria andProductCodeNotIn(String[] values) {
            if (values.length == 1) {
                return andProductCodeNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductCode + " not in",
                    Arrays.asList(values), "productCode");

                return this;
            }
        }

        public Criteria andProductCodeIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductCodeBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " between",
                value1, value2, "productCode");

            return this;
        }

        public Criteria andProductCodeNotBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.ProductCode + " not between",
                value1, value2, "productCode");

            return this;
        }

        public Criteria andProductNameIsNull() {
            addCriterion(IProductTeamRelateDAO.ProductName + " is null");

            return this;
        }

        public Criteria andProductNameIsNotNull() {
            addCriterion(IProductTeamRelateDAO.ProductName + " is not null");

            return this;
        }

        public Criteria andProductNameIsNotEmpty() {
            addCriterion(IProductTeamRelateDAO.ProductName +
                " is not null AND " + IProductTeamRelateDAO.ProductName +
                " <> ''");

            return this;
        }

        public Criteria andProductNameIsEmpty() {
            addCriterion("(" + IProductTeamRelateDAO.ProductName +
                " is null OR " + IProductTeamRelateDAO.ProductName + " = '')");

            return this;
        }

        public Criteria andProductNameEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " = ", value,
                "productName");

            return this;
        }

        public Criteria andProductNameEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductName);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " = ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameNotEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " <>", value,
                "productName");

            return this;
        }

        public Criteria andProductNameNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " is null OR " +
                IProductTeamRelateDAO.ProductName + " <>", value, "productName");

            return this;
        }

        public Criteria andProductNameNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductName);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " <> ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameGreaterThan(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " >", value,
                "productName");

            return this;
        }

        public Criteria andProductNameGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductName);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " > ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " >=", value,
                "productName");

            return this;
        }

        public Criteria andProductNameGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductName);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " >= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameLessThan(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " <", value,
                "productName");

            return this;
        }

        public Criteria andProductNameLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductName);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " < ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamRelateDAO.ProductName + " <=", value,
                "productName");

            return this;
        }

        public Criteria andProductNameLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamRelateDAO.ProductName);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " <= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.ProductName + " like",
                buffer.toString(), "productName");

            return this;
        }

        public Criteria andProductNameNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamRelateDAO.ProductName + " not like",
                buffer.toString(), "productName");

            return this;
        }

        public Criteria andProductNameIn(List<String> values) {
            if (values.size() == 1) {
                return andProductNameEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.ProductName + " in", values,
                    "productName");

                return this;
            }
        }

        public Criteria andProductNameNotIn(List<String> values) {
            if (values.size() == 1) {
                return andProductNameNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamRelateDAO.ProductName + " not in",
                    values, "productName");

                return this;
            }
        }

        public Criteria andProductNameIn(String[] values) {
            if (values.length == 1) {
                return andProductNameEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductName + " in",
                    Arrays.asList(values), "productName");

                return this;
            }
        }

        public Criteria andProductNameNotIn(String[] values) {
            if (values.length == 1) {
                return andProductNameNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamRelateDAO.ProductName + " not in",
                    Arrays.asList(values), "productName");

                return this;
            }
        }

        public Criteria andProductNameIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamRelateDAO.ProductName + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.ProductName + " between",
                value1, value2, "productName");

            return this;
        }

        public Criteria andProductNameNotBetween(String value1, String value2) {
            addCriterion(IProductTeamRelateDAO.ProductName + " not between",
                value1, value2, "productName");

            return this;
        }
    }
}
